/**
 * 控制滚动元素
 * @param {*} refValue 
 */
// export default function(refValue){
//   return {
//     mounted() {
//       this.$bus.$on("setMainScroll",this.handleSetMainScroll); //监听setMainScroll
//       this.$refs[refValue].addEventListener("scroll",this.handleMainScroll); // 自身滚动 发出滚动事件并 监听scroll滚动事件
//     },
//     beforeDestroy () {
//       this.$bus.$emit("mainScroll");
//       this.$bus.$off("setMainScroll",this.handleSetMainScroll);// 取消监听 
//       this.$refs[refValue].removeEventListener("scroll",this.handleMainScroll); // 移除事件
//     },
//     methods: {
//       handleSetMainScroll(scrollTop){ //设置dom 元素的滚动高度
//         this.$refs[refValue].scrollTop = scrollTop;
//       },
//       handleMainScroll(){
//         this.$bus.$emit("mainScroll",this.$refs[refValue]); // 触发事件
//       }
//     }
//   }
// }

export default function(refValue) {
  return {
    mounted() {
      this.$bus.$on("setMainScroll", this.handleSetMainScroll);
      this.$refs[refValue].addEventListener("scroll", this.handleMainScroll);
    },
    beforeDestroy() {
      this.$bus.$emit("mainscroll");
      this.$bus.$off("setMainScroll", this.handleSetMainScroll);
      this.$refs[refValue].removeEventListener("scroll", this.handleMainScroll);
    },
    methods: {
      handleSetMainScroll(scrollTop) {
        this.$refs[refValue].scrollTop = scrollTop;
      },
      handleMainScroll() {
        this.$bus.$emit("mainscroll", this.$refs[refValue]);
      },
    },
  };
}